The invention relates generally to tools for measuring the performance of mass storage systems, and more particularly, to a method and apparatus for measuring the write performance, from an input source, to a plurality of the disk drive elements controlled through a controller cache.
As the size and complexity of computer systems increase, including both of the number of host computers and the number and size of disk drive elements, it becomes increasingly important to measure and understand the functions and parameters which affect the write performance of the system. The performance of the system can be typically measured in terms of input/output (I/O) response times, that is, the time it takes for a read or write command to be acted upon, as far as the host computer is concerned, by the disk drive controller system.
It is well known, in the field, to measure, usually using a single parameter, the instantaneous or average response time of the system. Typically, a host computer outputs one or more I/O requests to the disk drive controller, and then measures the time for a response to be received from the disk drive controller. Alternatively, the number of I/O""s processed per second, as a function of time is another performance measure of the system.
It is well known that a disk controller, using a cache memory in its write process, can have substantially different write time responses depending upon the availability of cache memory. An average response (the average of, for example, a write where cache was available and one where cache was not available) would be misleading and meaningless.
Nevertheless, write performance is one important aspect of system performance. In one approach to measure write performance, the cache is first flushed and then write requests are issued to the storage system by attached hosts. When there is sufficient free space in the cache, the data is written to the cache and immediately acknowledged to the host. When there is not sufficient space in the cache, the write to cache is delayed until a cache slot is destaged to a disk drive, and then the data is written to cache and acknowledged to the host. The former I/O is called a fast write, and the later, a delayed fast write. Current performance tools can collect the number of I/Os completed in successive, fixed width, non-overlapping, time intervals from which plots of the I/O rate as a function of test time are made. By default these time intervals, or bins as they are called, can be 0.25 seconds in length. FIG. 1 is an example of such a plot and shows a situation of an initial fast write period of high I/O rate followed by a delayed fast write period of lower I/O rate. These plots are then analyzed manually to determine, for example, when the transition from the fast write to the delayed fast write occurs.
Reporting a single I/O rate for a write test when a transition from fast write to delayed fast write has occurred can be very misleading. Depending on the length of the test one could get any value from the initial high I/O rate to the lower post-transition I/O rate. For this reason two numbers are reported: a fast write I/O rate and a delayed fast write I/O rate. These are computed by presenting the human analyst with a series of graphs, such as FIG. 1, on a computer monitor, for every write test. He or she then uses the mouse to indicate the start and end points of the fast write and, when a transition occurred, the delayed fast write intervals. This procedure works quite well for a small number of tests; however, in a full set of tests of a system, there are typically several hundred write tests and manually selecting that many end points soon becomes tedious and error prone.
The invention relates to a method for measuring the system write performance of a mass storage system having a plurality of disk drive storage elements controlled by a disk drive controller. The disk drive controller has a cache memory. The controller receives at least write commands and data from, and returns at least data to, a plurality of host computers. The method features clearing a data storage area of the cache memory; sending test results representing write times for storage of received data to a system analysis program; quantizing the write times data to generate a representation of an I/O rate vs. quantized time relationship; and automatically determining a fast write to delayed fast write transition interval, if any, in said write times data.
In particular embodiments, the invention features initializing the conroller cache memory to a known state prior to sending of the write commands, analyzing, at the one host computer, performance data of the transition interval data, and generating a write analysis of the system performance. Further, the invention features determining, for the test results, the number I/O writes as a function of time for the mass storage system, and deleting at least one of a beginning period of test data and a ending period of the test data from use in determining the location of any transition.
In another aspect, the invention relates to software stored on a computer readable medium to perform the function of measuring write system performance in a mass storage system. The storage system has a plurality of disk drive storage elements controlled by a disk drive controller, the controller receiving at least write commands and data from at least one host computer and using a cache memory in which all received data is stored and from which it is destaged. The function features clearing a disk storage area of the cache memory, sending test results representing write times for storage of received data to a system analysis program, quantizing the write times data to generate a representation of an I/O rate vs. quantized times, and automatically determining a fast write to delayed fast write transition interval in the write times data.
Advantageously, therefore, the system provides for automatically characterizing the write performance of the mass storage system, from the host computers to the disk drive elements, concentrating upon cache performance effects. The method and apparatus of the invention further advantageously enable the user to check determinations of the automatic system for consistency, accuracy, and effectiveness.